NP Hard and NP Complete Problems